﻿using System.Collections.Generic;
using System.Linq;
using System.Text;
using DapperExtensions;
using DapperExtensions.Mapper;

namespace ExaminationSys.DataAccess.Repository
{

    public interface IRepository<T> where T : class
    {
        T GetById(dynamic id);
        IEnumerable<T> GetList();
        IEnumerable<T> GetList(IPredicate predicate);
        void Insert(T entity);
        dynamic Insert(T entity, int? commandTimeout);
        bool Update(T entity);
        void Delete(T entity);
        bool Delete(IPredicate predicate);
    }
}
